package com.star.sync.elasticsearch.dto.torderinfo;

import com.star.sync.elasticsearch.annotation.EsDataMapping;
import com.star.sync.elasticsearch.execute.torderinfo.TOrderInfoExecute;
import lombok.*;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * t_company_project
 * @author 
 */
@Data
@EsDataMapping(indexName = "t_company_project",tableName = "t_company_project",type = "child")
public class TCompanyProject extends TOrderInfoExecute<TCompanyProject> {
    /**
     * 表主键ID
     */
    private Integer id;

    /**
     * 企业信息ID
     */
    private Integer companyId;

    /**
     * 项目编号
     */
    private String projectCode;

    /**
     * 项目名称
     */
    private String projectName;

    /**
     * 项目特点
     */
    private String projectFeature;

    /**
     * 项目上线合同起始日期
     */
    private Date projectOnlineContractBeginningDate;

    /**
     * 项目上线合同结束日期
     */
    private Date projectOnlineContractEndDate;

    /**
     * 项目上线方案
     */
    private String projectOnlineProgram;

    /**
     * 项目对接市场专员
     */
    private String projectJoinMarketingPerson;

    /**
     * 项目对接实施专员
     */
    private String projectJoinImplementPerson;

    /**
     * 项目停止标记 默认值0，表示启用。1表示已停止。
     */
    private Boolean stopFlag;

    /**
     * 线路类型  枚举值：短途运输，长途运输，来回运输，接驳运输；编入CODE表；取code值；M22
     */
    private String lineType;

    /**
     * 资金转移方式 枚举值：1.直接支付到实际运输人（司机）；2.支付到车辆所有人（车老板）；3.支付给经纪人，再由经纪人支付给实际运输人（司机）；4.支付给经纪人，再由经纪人支付给车辆所有人（车老板）
     */
    private String capitalTransferType;

    /**
     * 提现方式 自主提现，自动到卡；
     */
    private String withdrawType;

    /**
     * 合同照片2
     */
    private String contractPhoto2;

    /**
     * 合同照片1
     */
    private String contractPhoto1;
    /**
     * 其他内容
     */
    private String otherContent;

    /**
     * 支付方式
     */
    private String payMethod;

    /**
     * 授信额度
     */
    private BigDecimal creditLine;

    /**creditLine
     * 使用后剩余额度
     */
    private BigDecimal afterUseLeftLimit;

    /**
     * 开启日期
     */
    private Date startTime;

    /**
     * 授信天数
     */
    private Integer creditDays;

    /**
     * （支付）还款期限
     */
    private Integer payDeadline;

    /**
     * 备注
     */
    private String remark;

    /**
     * 审核流程ID
     */
    private Integer workflowId;

    /**
     * 审核状态
     */
    private String auditStatus;

    /**
     * 审核意见
     */
    private String auditOpinion;

    /**
     * 审核状态对应时间
     */
    private Date auditTime;

    /**
     * 扩展字段1
     */
    private String param1;

    /**
     * 扩展字段2
     */
    private String param2;

    /**
     * 扩展字段3
     */
    private String param3;

    /**
     * 扩展字段4
     */
    private String param4;

    /**
     * 操作方式
     */
    private String operateMethod;

    /**
     * 操作IP地址
     */
    private String operatorIp;

    /**
     * 支付流程
     */
    private Integer paymentProcess;

    /**
     * 创建人
     */
    private String createUser;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新人
     */
    private String updateUser;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 是否删除 : 1 true 已删除   ||||   0 false 未删除
     */
    private Boolean enable;


    @Override
    public TCompanyProject update(TCompanyProject tCompanyProject) {
        return null;
    }

    @Override
    public TCompanyProject delete(TCompanyProject tCompanyProject) {
        return null;
    }
}